package cn.edu.imau.zy.common.core.entity.examination;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import cn.edu.imau.zy.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.Map;
import java.util.HashMap;
import java.math.BigDecimal;
import cn.edu.imau.zy.common.core.domain.BaseEntity;

import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * 试题信息对象 e_question_info
 * 
 * @author xsc
 * @date 2021-12-04
 */

@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("e_question_info")
public class EQuestionInfo implements Serializable
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private String id;

    /** 试题内容 */
    @Excel(name = "试题内容")
    private String content;


    @Excel(name = "试题类型")
    @TableField(exist = false)
    private String questionTypeName;

    /** 试题选项（多个以逗号隔开） */
    @Excel(name = "选项内容")
    private String options;


    /** 答案 */
    @Excel(name = "答案",type = Excel.Type.ALL)
    private String answer;

    /** 试题解析内容 */
    @Excel(name = "试题解析")
    private String analysis;

    /** 总结升华 */
    @Excel(name = "总结升华")
    private String summarize;

    /** 课程名称 */
    @Excel(name = "课程ID")
    private Long subjectId;

    /** $column.columnComment */
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
    private Date createDate;

    /** $column.columnComment */
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd")
    private Date updateDate;

    /** $column.columnComment */
    @Excel(name = "视频URL")
    private String videoUrl;



    /** 试题类型 */
    @Excel(name = "试题类型",readConverterExp = "1=填空题,2=单选题,3=综合题,4=多选题,5=判断题,6=计算题", combo = {"填空题", "单选题", "综合题", "多选题","判断题","计算题"})
    private Integer questionType;

    /** 阶段id */
    @Excel(name = "阶段id")
    private Integer schoolType;

    /** $column.columnComment */
    @Excel(name = "试题类型")
    private Integer gradeInfoId;


    /** $column.columnComment */
    @Excel(name = "关联id")
    private Long languagePointsId;


    @TableField(exist = false)
    private Map<String, Object> params = new HashMap<>();

}
